package com.wuad.platformwuad.module.Excel.controller.easyExcel.serve;

import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.event.AnalysisEventListener;
import com.wuad.platformwuad.module.Excel.controller.easyExcel.entity.ReadData;

import java.util.ArrayList;
import java.util.List;
import java.util.Map;


/**
 * 创建读取excel监听器（使用对象接收数据）
 * @author wuad
 */
public class ExcelListenerOnObject extends AnalysisEventListener<ReadData> {

    /**
     * 创建list集合封装最终的数据
     */
    List<ReadData> list = new ArrayList<ReadData>();

    /**
     * 一行一行去读取excle内容
     * @param user
     * @param analysisContext
     */
    @Override
    public void invoke(ReadData user, AnalysisContext analysisContext) {
        System.out.println("***"+user);
        list.add(user);
    }

    /**
     * 读取excel表头信息
     *
     * @param headMap
     * @param context
     */
    @Override
    public void invokeHeadMap(Map<Integer, String> headMap, AnalysisContext context) {
        System.out.println("表头信息："+headMap);
    }

    /**
     * 读取完成后执行
     *
     * @param analysisContext
     */
    @Override
    public void doAfterAllAnalysed(AnalysisContext analysisContext) {
        System.out.println("读取完后执行的这个方法可以取到数据：" + list.size());
    }
}
